<?php

# -- DÉBUT NOTE DE LICENCE -------------------------------------
#
# Ce fichier fait partie du plugin «Langues» pour Clicpage.
#
# Copyright (c) 2010 Francois (www.clicpage.net)
# Distribué selon les termes de la licence GPL version 2.0.
# Consultez le fichier LICENCE ou
# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
#
# -- FIN NOTE DE LICENCE ---------------------------------------

class gadgetPLanguesChoixLangue extends cpGadget
{

	
	
	
	
	/// @name Administration
	//@{
	public function adminInterface()
	{
		
		$html =
		'<p>'.
			'<label for="'.$this->champID('titre').'">'.__('Titre').'</label>'.
			form::field($this->champNomID('titre'), 50, 50, $this->gadget_inst_titre).
		'</p>'.
		'<p>'.
			'<label for="'.$this->champID('texte').'">'.__('HTML (facultatif)').'</label>'.
			form::textArea($this->champNomID('texte'), 50, 3, $this->gadget_inst_data).
		'</p>';
		
		return array(
			'html'			=> $html,
			'javascript'	=> ''
		);
		
	}
	
	
	public function preparerInstData(&$data)
	{
		
		if(empty($data['titre'])) {
			throw new cpErreur(__('Vous devez indiquer un titre.'), $this->champID('titre'), 101);
		}
		
		return $data['texte'];
		
	}
	//@}
	
	
	
	
	
	/// @name Public
	//@{
	
	
	protected $langues;
	protected $traductions;
	
	public function verifierAffichage($_ctx)
	{
		
		if(!parent::verifierAffichage($_ctx)) {
			return false;
		}
		
		$this->langues = new pLangues($_ctx->core);
		
		# Obtenir la liste des traductions
		$this->traductions = $this->langues->getTraductions($_ctx->page->page_id);
		
		if(count($this->traductions) < 2) {
			return false;
		}
		
		return true;
		
	}
	
	
	public function public_contenu($_ctx)
	{
		
		$langues = $_ctx->core->getLangues();
		
		$html = $this->gadget_inst_data.'<ul class="pLanguesChoixLangue-traductions">';
		
		foreach($this->traductions as $traduction)
		{
			if($traduction['page_langue'] != $_ctx->page->page_langue)
			{
				$html.=
				'<li><a href="'.CP_URL_PUBLIQUE_RELATIVE.$traduction['page_url'].'">'.html::escapeHTML($langues[$traduction['page_langue']]['nom']).'</a></li>';
			}
		}
		
		$html.='</ul>';
		
		return $html;
		
	}
	//@}
	
	
}

?>